home *** CD-ROM | disk | FTP | other *** search
/ Game Programming in C++ - Start to Finish / GameProgrammingS.iso / developer_install / CEGUISDK-0.4.1-VC6-Native.exe / {app} / include / falagard / CEGUIFalEnums.h < prev    next >
Encoding:
C/C++ Source or Header  |  2005-07-18  |  7.8 KB  |  148 lines

  1. /************************************************************************
  2.     filename:   CEGUIFalEnums.h
  3.     created:    Mon Jun 13 2005
  4.     author:     Paul D Turner <paul@cegui.org.uk>
  5. *************************************************************************/
  6. /*************************************************************************
  7.     Crazy Eddie's GUI System (http://www.cegui.org.uk)
  8.     Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk)
  9.  
  10.     This library is free software; you can redistribute it and/or
  11.     modify it under the terms of the GNU Lesser General Public
  12.     License as published by the Free Software Foundation; either
  13.     version 2.1 of the License, or (at your option) any later version.
  14.  
  15.     This library is distributed in the hope that it will be useful,
  16.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  17.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  18.     Lesser General Public License for more details.
  19.  
  20.     You should have received a copy of the GNU Lesser General Public
  21.     License along with this library; if not, write to the Free Software
  22.     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  23. *************************************************************************/
  24. #ifndef _CEGUIFalEnums_h_
  25. #define _CEGUIFalEnums_h_
  26.  
  27. // Start of CEGUI namespace section
  28. namespace CEGUI
  29. {
  30.     /*!
  31.     \brief
  32.         Enumeration of possible values to indicate what a given dimension represents.
  33.     */
  34.     enum DimensionType
  35.     {
  36.         DT_LEFT_EDGE,       //!< Dimension represents the left edge of some entity (same as DT_X_POSITION).
  37.         DT_X_POSITION,      //!< Dimension represents the x position of some entity (same as DT_LEFT_EDGE).
  38.         DT_TOP_EDGE,        //!< Dimension represents the top edge of some entity (same as DT_Y_POSITION).
  39.         DT_Y_POSITION,      //!< Dimension represents the y position of some entity (same as DT_TOP_EDGE).
  40.         DT_RIGHT_EDGE,      //!< Dimension represents the right edge of some entity.
  41.         DT_BOTTOM_EDGE,     //!< Dimension represents the bottom edge of some entity.
  42.         DT_WIDTH,           //!< Dimension represents the width of some entity.
  43.         DT_HEIGHT,          //!< Dimension represents the height of some entity.
  44.         DT_X_OFFSET,        //!< Dimension represents the x offset of some entity (usually only applies to an Image entity).
  45.         DT_Y_OFFSET,        //!< Dimension represents the y offset of some entity (usually only applies to an Image entity).
  46.         DT_INVALID          //!< Invalid / uninitialised DimensionType.
  47.     };
  48.  
  49.     /*!
  50.     \brief
  51.         Enumeration of possible values to indicate the vertical formatting to be used for an image component.
  52.     */
  53.     enum VerticalFormatting
  54.     {
  55.         VF_TOP_ALIGNED,         //!< Top of Image should be aligned with the top of the destination area.
  56.         VF_CENTRE_ALIGNED,      //!< Image should be vertically centred within the destination area.
  57.         VF_BOTTOM_ALIGNED,      //!< Bottom of Image should be aligned with the bottom of the destination area.
  58.         VF_STRETCHED,           //!< Image should be stretched vertically to fill the destination area.
  59.         VF_TILED                //!< Image should be tiled vertically to fill the destination area (bottom-most tile may be clipped).
  60.     };
  61.  
  62.     /*!
  63.     \brief
  64.         Enumeration of possible values to indicate the horizontal formatting to be used for an image component.
  65.     */
  66.     enum HorizontalFormatting
  67.     {
  68.         HF_LEFT_ALIGNED,        //!< Left of Image should be aligned with the left of the destination area.
  69.         HF_CENTRE_ALIGNED,      //!< Image should be horizontally centred within the destination area.
  70.         HF_RIGHT_ALIGNED,       //!< Right of Image should be aligned with the right of the destination area.
  71.         HF_STRETCHED,           //!< Image should be stretched horizontally to fill the destination area.
  72.         HF_TILED                //!< Image should be tiled horizontally to fill the destination area (right-most tile may be clipped).
  73.     };
  74.  
  75.     /*!
  76.     \brief
  77.         Enumeration of possible values to indicate the vertical formatting to be used for a text component.
  78.     */
  79.     enum VerticalTextFormatting
  80.     {
  81.         VTF_TOP_ALIGNED,         //!< Top of text should be aligned with the top of the destination area.
  82.         VTF_CENTRE_ALIGNED,      //!< text should be vertically centred within the destination area.
  83.         VTF_BOTTOM_ALIGNED       //!< Bottom of text should be aligned with the bottom of the destination area.
  84.     };
  85.  
  86.     /*!
  87.     \brief
  88.         Enumeration of possible values to indicate the horizontal formatting to be used for a text component.
  89.     */
  90.     enum HorizontalTextFormatting
  91.     {
  92.         HTF_LEFT_ALIGNED,        //!< Left of text should be aligned with the left of the destination area (single line of text only).
  93.         HTF_RIGHT_ALIGNED,       //!< Right of text should be aligned with the right of the destination area  (single line of text only).
  94.         HTF_CENTRE_ALIGNED,      //!< text should be horizontally centred within the destination area  (single line of text only).
  95.         HTF_JUSTIFIED,           //!< text should be spaced so that it takes the full width of the destination area (single line of text only).
  96.         HTF_WORDWRAP_LEFT_ALIGNED,    //!< Left of text should be aligned with the left of the destination area (word wrapped to multiple lines as needed).
  97.         HTF_WORDWRAP_RIGHT_ALIGNED,   //!< Right of text should be aligned with the right of the destination area  (word wrapped to multiple lines as needed).
  98.         HTF_WORDWRAP_CENTRE_ALIGNED,  //!< text should be horizontally centred within the destination area  (word wrapped to multiple lines as needed).
  99.         HTF_WORDWRAP_JUSTIFIED        //!< text should be spaced so that it takes the full width of the destination area (word wrapped to multiple lines as needed).
  100.     };
  101.  
  102.     /*!
  103.     \brief
  104.         Enumeration of possible values to indicate a particular font metric.
  105.     */
  106.     enum FontMetricType
  107.     {
  108.         FMT_LINE_SPACING,       //!< Vertical line spacing value for font.
  109.         FMT_BASELINE,           //!< Vertical baseline value for font.
  110.         FMT_HORZ_EXTENT         //!< Horizontal extent of a string.
  111.     };
  112.  
  113.     /*!
  114.     \brief
  115.         Enumeration of values representing mathematical operations on dimensions.
  116.     */
  117.     enum DimensionOperator
  118.     {
  119.         DOP_NOOP,       //!< Do nothing operator.
  120.         DOP_ADD,        //!< Dims should be added.
  121.         DOP_SUBTRACT,   //!< Dims should be subtracted.
  122.         DOP_MULTIPLY,   //!< Dims should be multiplied.
  123.         DOP_DIVIDE      //!< Dims should be divided.
  124.     };
  125.  
  126.     /*!
  127.     \brief
  128.         Enumeration of values referencing available images forming a frame component.
  129.     */
  130.     enum FrameImageComponent
  131.     {
  132.         FIC_BACKGROUND,             //!< References image used for the background.
  133.         FIC_TOP_LEFT_CORNER,        //!< References image used for the top-left corner.
  134.         FIC_TOP_RIGHT_CORNER,       //!< References image used for the top-right corner.
  135.         FIC_BOTTOM_LEFT_CORNER,     //!< References image used for the bottom-left corner.
  136.         FIC_BOTTOM_RIGHT_CORNER,    //!< References image used for the bottom-right corner.
  137.         FIC_LEFT_EDGE,              //!< References image used for the left edge.
  138.         FIC_RIGHT_EDGE,             //!< References image used for the right edge.
  139.         FIC_TOP_EDGE,               //!< References image used for the top edge.
  140.         FIC_BOTTOM_EDGE,            //!< References image used for the bottom edge.
  141.         FIC_FRAME_IMAGE_COUNT       //!< Max number of images for a frame.
  142.     };
  143.  
  144. } // End of  CEGUI namespace section
  145.  
  146.  
  147. #endif  // end of guard _CEGUIFalEnums_h_
  148.